package com.yuke.cloud.service.cmc.dto;

import com.yuke.cloud.service.api.pmc.dto.FactoryInfoDto;
import com.yuke.cloud.service.api.pmc.dto.ProdSpecInfoDto;
import com.yuke.cloud.service.api.pmc.dto.RegionInfoDto;
import com.yuke.cloud.service.api.smc.dto.ShopInfoDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.persistence.Column;
import java.util.Date;

@Data
public class CmsAppTopicDataDetailDto {
    private String topicIds;
    private String longitude;
    private String latitude;
    private ProdSpecInfoDto prodSpecInfoDto;
    private FactoryInfoDto factoryInfoDto;
    private RegionInfoDto regionInfoDto;
    private ShopInfoDto shopInfoDto;
    private Long shopId;
    private Byte saleType;

    @ApiModelProperty(value="dataId主键，自增")
    private Long dataId;

    /**
     * 推荐内容所属主题ID，与cms_app_topic表关联
     */
    @ApiModelProperty(value="topicId推荐内容所属主题ID，与cms_app_topic表关联")
    private Long topicId;

    @ApiModelProperty(value="topicName名称")
    private String topicName;

    /**
     * 名称
     */
    @Column(name = "data_name")
    @ApiModelProperty(value="dataName名称")
    private String dataName;

    /**
     * 数据类型，1：商品类；2：厂家类；3：地域类；4：店铺类；5：其他。
     */
    @Column(name = "data_type")
    @ApiModelProperty(value="dataType数据类型，1：商品类；2：厂家类；3：地域类；4：店铺类；5：其他。")
    private Integer dataType;

    /**
     * 跳转的目标类型，1：APP页；2：H5页面。
     */
    @Column(name = "obj_type")
    @ApiModelProperty(value="objType跳转的目标类型，1：APP页；2：H5页面。")
    private Byte objType;

    /**
     * 显示的图片地址，如果是商品、厂家或地域类，该项可不填
     */
    @Column(name = "pic_url")
    @ApiModelProperty(value="picUrl显示的图片地址，如果是商品、厂家或地域类，该项可不填")
    private String picUrl;

    /**
     * 图片的标题文字，非必填项
     */
    @ApiModelProperty(value="title图片的标题文字，非必填项")
    private String title;

    /**
     * 具体值根据obj_type而定,如果obj_type为APP内页面跳转，则该项为页面的唯一标识，如果需要参数，则用?key=value&key=value方式；如果obj_type为H5页面跳转，则该项为H5链接URL
     */
    @Column(name = "link_url")
    @ApiModelProperty(value="linkUrl具体值根据obj_type而定,如果obj_type为APP内页面跳转，则该项为页面的唯一标识，如果需要参数，则用?key=value&key=value方式；如果obj_type为H5页面跳转，则该项为H5链接URL")
    private String linkUrl;

    /**
     * 该项为商品ID或厂家ID或地域ID，填写值根据data_type类型而定
     */
    @Column(name = "item_id")
    @ApiModelProperty(value="itemId该项为商品ID或厂家ID或地域ID，填写值根据data_type类型而定")
    private Long itemId;

    /**
     * 排序
     */
    @Column(name = "sort")
    @ApiModelProperty(value="sort排序")
    private Integer sort;

    /**
     * 是否在首页栏目中推荐
     */
    @Column(name = "is_reco")
    @ApiModelProperty(value="isReco是否在首页栏目中推荐")
    private Boolean isReco;

    /**
     * 是否为子主题，如果是子主题，则其下面有主题内容
     */
    @Column(name = "is_child_topic")
    @ApiModelProperty(value="isChildTopic是否为子主题，如果是子主题，则其下面有主题内容")
    private Boolean isChildTopic;

    /**
     * 更新人ID，与acc_user表关联
     */
    @Column(name = "update_user")
    @ApiModelProperty(value="updateUser更新人ID，与acc_user表关联")
    private Long updateUser;

    /**
     * 数据更新时间
     */
    @Column(name = "update_time")
    @ApiModelProperty(value="updateTime数据更新时间")
    private Date updateTime;
}
